/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package funda.appius.Catalogo.Conceptos;

import funda.appius.arquitectura.AbstractFunda;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author payo
 */
public class Seccion_Concepto extends AbstractFunda{
    
    private String Nombre;
    private ArrayList<Concepto> LstConcepto;
    private int IdSeccionConcepto,IdCatalogoConceptos;

    public int getIdCatalogoConceptos() {
        return IdCatalogoConceptos;
    }

    public void setIdCatalogoConceptos(int IdCatalogoConceptos) {
        this.IdCatalogoConceptos = IdCatalogoConceptos;
    }

    public int getIdSeccionConcepto() {
        return IdSeccionConcepto;
    }

    public void setIdSeccionConcepto(int IdSeccionConcepto) {
        this.IdSeccionConcepto = IdSeccionConcepto;
    }

    public ArrayList<Concepto> getLstConcepto() {
        return LstConcepto;
    }

    public void setLstConcepto(ArrayList<Concepto> LstConcepto) {
        this.LstConcepto = LstConcepto;
    }

    public String getNombre() {
        return Nombre;
    }

    public void setNombre(String Nombre) {
        this.Nombre = Nombre;
    }

    
    
    public Seccion_Concepto()
    {
        super();
    }

    public Seccion_Concepto(String Nombre, int IdCatalogoConceptos) {
        super();
        this.Nombre = Nombre;
        this.IdCatalogoConceptos = IdCatalogoConceptos;
        this.IdSeccionConcepto = Integer.parseInt(insertarId().toString());   
    }
    
    @Override
    protected void fillFunda(ResultSet row) {
        try{
            int x =0;
            this.IdSeccionConcepto = row.getInt(++x);
            this.Nombre = row.getString(++x);
            this.IdCatalogoConceptos = row.getInt(++x);
            this.LstConcepto = new ArrayList<Concepto>();
            List<AbstractFunda> abs = AbstractFunda.getAllFrom("concepto", "IdConcepto", " IdSeccionConcepto", IdSeccionConcepto,Concepto.class);
            for(AbstractFunda val : abs)
                this.LstConcepto.add((Concepto)val);
        }
        catch(Exception e){}
    }

    @Override
    protected void Comandos() {
        this.id = "IdSeccionConcepto";
        this.tabla = "seccionconcepto";
        this.strDelete = "DeleteSeccionConcepto";
        this.strInsertar = "InsertarSeccionConcepto";
        this.strInsertarId = "InsertarIdSeccionConcepto";
        this.strUpdate = "UpdateSeccionConcepto";
    }

    @Override
    public ArrayList<Object> getAtributos() {
        ArrayList<Object> lst = new ArrayList<Object>();
        lst.add(Nombre);
        lst.add(IdCatalogoConceptos);
        lst.add(IdSeccionConcepto);
        return lst;
    }
    
      @Override
    public Seccion_Concepto get(Object id) {
        AbstractFunda abs = AbstractFunda.getAbstractFunda(new Seccion_Concepto(),id,tabla,this.id);
        Seccion_Concepto c = (Seccion_Concepto)abs;
        return c;
    }
    
    public ArrayList<Seccion_Concepto> getAll() {
        List<AbstractFunda> abs = AbstractFunda.getAll(tabla,id,this.getClass());
        ArrayList<Seccion_Concepto> lst = new ArrayList<Seccion_Concepto>();
        for(AbstractFunda af : abs)
            lst.add((Seccion_Concepto)af);
        return lst;
    }
    
   
}